home *** CD-ROM | disk | FTP | other *** search
-
- ~4Dgifts/toolbox/documents/OpenGL README
-
-
- `!' indicates new or updated as of version 4.2
-
-
- Contents:
-
- ! opengl.ps: "The Design of the OpenGL Graphics Interface"
-
- ABSTRACT: OpenGL is an emerging graphics standard that provides
- advanced rendering features while maintaining a simple programming
- model. Because OpenGL is rendering-only, it can be incorporated into
- any window system (and has been, into the X Window System and a soon-to-
- be-released version of Windows) or can be used without a window system.
- An OpenGL implementation can efficiently accommodate almost any level of
- graphics hardware, from a basic framebuffer to the most sophisticated
- graphics subsystems. It is therefore a good choice for use in
- interactive 3D and 2D graphics applications.
- We describe how these and other considerations have governed the
- selection and presentation of graphical operators in OpenGL. Complex
- operations have been eschewed in favor of simple, direct control over
- the fundamental operations of 3D and 2D graphics. Higher-level
- graphical functions may, however, be built from OpenGL's low-level
- operators, as the operators have been designed with such layering in
- mind.
-
- -----------------------------------------------------------------------------
-
- OpenGLtutorial: this directory contains files of the tutorial notes for
- the "OpenGL and X" tutorial presented as the 8th Annual
- X Technical Conference in Boston, on January 24, 1994:
- woo.ps Mason Woo's presentation introducing OpenGL and its
- functionality (49 pages).
- mjk.showcase Mark Kilgard's presentation on how OpenGL integrates with
- the X Window System (53 pages).
- segal.ps Mark Segal and Kurt Akeley's paper describing the "The
- OpenGL Graphics Interface" (21 pages).
-
- -----------------------------------------------------------------------------
-
- analysisPEX: Analysis of PEX 5.1 and OpenGL 1.0
-
- PEX and OpenGL are two 3D graphics systems contending for the position
- of de facto standard in the workstation market. While they are similar
- in many ways, they also differ in important aspects of their
- application programming interfaces, functionality, performance,
- portability, openness, and responsiveness to changes in markets and in
- technology.
-
- To our knowledge, no detailed comparisons of PEX and OpenGL have been
- published. Perhaps this is because the two systems are evolving and few
- individuals have experience with both. With the release of PEX 5.1 and
- OpenGL 1.0, we believe the systems are relatively stable and it is now
- time to undertake a comparison.
-
- This paper analyzes some of the significant differences between PEX and
- OpenGL, with attention to issues faced by users as well as
- implementors. We hope it will be a positive contribution to the
- debate.
-
- -----------------------------------------------------------------------------
-
- irixgl2opengl.ascii: a list mapping IrisGL commands to similar OpenGL
- commands.
-
- Note in many cases the OpenGL commands listed function somewhat
- differently from the IrisGL commands, and the format of the parameters
- may be different as well. See the OpenGL man pages for detailed
- descriptions of the functions of the these commands and the parameters
- they take.
-
- -----------------------------------------------------------------------------
-
- irisgl2opengl.ps: PostScript version of the list mapping IrisGL commands
- to similar OpenGL commands--expanded contents
-
- Similar to the irisgl2opengl ascii text file, this file also includes
- a "Where Discussed" column for each command. This is Appendix A of
- "The OpenGL Porting Guide" Iris Insight Help book.
-
- -----------------------------------------------------------------------------
-
- intro.ps: "OpenGL(tm) and X, Part 1: An Introduction", Mark Kilgard,
- "The X Journal", November/December, 1993.
-
- The OpenGL graphics system is a high-performance, window system
- independent 2D and 3D graphics interface. The technology was developed
- by Silicon Graphics and is now controlled by the OpenGL Architecture
- Review Board. OpenGL's GLX extension integrates OpenGL with the X
- Window System. This article describes OpenGL's functionality and how
- it is used with X. A simple OpenGL program using Xlib is presented.
- OpenGL is compared and contrasted with PEX, a 3D graphics interface
- designed specifically for X. The two subsequent articles in this
- series describe how to integrate OpenGL with Xlib and Motif programs.
-
- -----------------------------------------------------------------------------
-
- xlib.ps: "OpenGL(tm) and X, Part 2: Using OpenGL with Xlib", Mark
- Kilgard, "The X Journal", January/February, 1994.
-
- This is the second article in a three-part series about using the
- OpenGL(tm) graphics system and the X Window System. A moderately
- complex OpenGL program for X is presented. Depth Buffering, back-face
- culling, lighting, display list modeling, polygon tessellation, double
- buffering, and shading are all demonstrated. The program adheres to
- proper X conventions for colormap sharing, window manager communication,
- command line argument processing, and event processing. After the
- example, advanced X and OpenGL issues are discussed including minimizing
- colormap flashing, handling overlays, using fonts, and performing
- animation. The last article in this series discussess integrating
- OpenGL with the Motif toolkit.
-
- -----------------------------------------------------------------------------
-
- motif.ps: "OpenGL(tm) and X, Part 3: Integrating OpenGL with Motif",
- Mark Kilgard, "The X Journal", May/June, 1994.
-
- This is the third article in a three-part series about using the
-
- -----------------------------------------------------------------------------
-
- xtech.ps: "X Server Multi-rendering for OpenGL and PEX", presented at the
- 8th Annual X Technical Conference, Boston, Mass., 1/25/94.
-
- ABSTRACT: To support OpenGL (TM) and PEX rendering within the Silicon
- Graphics X server without compromising interactivity, we devised and
- implemented a scheme named "multi-rendering". Making minimal changes to
- the X Consortium sample server's overall structure, the scheme allows
- independent processes within the X server's address space to perform
- OpenGL rendering asynchronously to the X server's main thread of
- execution. The IRIX operating system's process share group facility,
- user-level and pollable semaphores, and support for virtualized direct
- access rendering are all leveraged to support multi-rendering. The
- Silicon Graphics implementation of PEX also uses the multi-rendering
- facility and works by converting rendering requests into OpenGL commands.
- Mutli-rendering is contrasted with other schemes for improving server
- interactivity. Unlike co-routines, multi-rendering supports multi-
- processing; unlike multi-threading, multi-rendering requires minimal
- locking overhead.
-
- -----------------------------------------------------------------------------
-
- gluSpec.ps: The OpenGL(TM) Graphics System Utility Library
- glxSpec.ps: OpenGL(TM) Graphics with the X Window System(R)
- OglSpec.ps: The OpenGL(TM) Graphics System: A Specification (Version 1.0)
-
-
- Copyright (c) 1992, 1993 Silicon Graphics, Inc. All Rights Reserved.
-
- gluSpec.ps: The OpenGL(TM) Graphics System Utility Library
-
- The GL Utilities (GLU) library is a set of routines designed
- to complement the OpenGL(TM) graphics system by providing
- support for mipmapping, matrix manipulation, polygon
- tessellation, quadrics, NURBS, and error handling. Mipmapping
- routines include image scaling and automatic mipmap generation.
- A variety of matrix manipulation functions build projection
- and viewing matrices, or project vertices from one coordinate
- system to another. Polygon tessellation routines convert
- concave polygons into triangles for easy rendering. Quadrics
- support renders a few basic quadrics such as spheres and cones.
- NURBS code maps complicated NURBS curves and trimmed surfaces
- into simpler OpenGL evaluators. Lastly, an error lookup
- routine translates OpenGL and GLU error codes into strings.
-
-
- glxSpec.ps: OpenGL(TM) Graphics with the X Window System(R) (Version 1.0)
-
- This document describes GLX, the OpenGL extension to the X
- Window System. It refers to concepts discussed in the OpenGL
- specification, and may be viewed as an X specific appendix to
- that document. Parts of the document assume some
- acquaintance with both the OpenGL and X.
- In the X Window System, OpenGL rendering is made available as
- an extension to X in the formal X sense: connection and
- authentication are accomplished with the normal X mechanisms.
- As with other X extensions, there is a defined network
- protocol for the OpenGL rendering commands encapsulated
- within the X byte stream.
- Since performance is critical in 3D rendering, there is a
- way for OpenGL rendering to bypass the data encoding step,
- the data copying, and interpretation of that data by the X
- server. This direct rendering is possible only when a
- process has direct access to the graphics pipeline.
- Allowing for parallel rendering has affected the design of
- the GLX interface. This has resulted in an added burden on
- the client to explicitly prevent parallel execution when
- that is inappropriate.
- X and the OpenGL have different conventions for naming entry
- points and macros. The GLX extension adopts those of the
- OpenGL.
-
-
- OglSpec.ps: The OpenGL(TM) Graphics System: A Specification (Version 1.0)
-
- This document describes the OpenGL graphics system: what it
- is, how it acts, and what is required to implement it. We
- assume that the reader has at least a rudimentary
- understanding of computer graphics. This means familiarity
- with the essentials of computer graphics, algorithms, as well
- as familiarity with basic graphics hardware and associated
- terms.
-
-
-
- These 3 documents first appeared on the OpenGL CD given out at
- out at siggraph 1993. From the top-level README of that CD:
-
-
- The spec directory contains no source code, but it does contain
- Release 1.0.10 of the OpenGL Specification, including the OpenGL
- Utility Library, and the API for the OpenGL extension to the X Window
- System, as released by the OpenGL Architectural Review Board. As of
- July, 1993, the OpenGL Architectural Review Board consists of Digital
- Equipment, IBM, Intel, Microsoft, and Silicon Graphics.
-
- The OpenGL Specification will enable people to get a more in-depth
- understanding of the internals of OpenGL. (For most people, the
- Addison-Wesley book series will be enough documentation.) However,
- this copy of the Specification is not a license to implement OpenGL
- or to use the trademark OpenGL(TM). Contact Mason Woo at Silicon
- Graphics, Inc. for more details about licensing.
-
- ------------
- Copyright (c) 1992, 1993 Silicon Graphics, Inc. All Rights Reserved.
-
- The OpenGL(TM) Specification on this CD-ROM is protected by
- International Copyright Law, and is proprietary to Silicon
- Graphics, Inc. You may not copy, adapt, distribute, or publicly
- perform or display any portion of such material without the
- express, prior written consent of Silicon Graphics, Inc. Your
- receipt or possession of the OpenGL Specification does not grant
- to you or anyone else any right to reproduce, create derivative
- works based on or distribute or otherwise disclose any of its
- contents, or to manufacture, use or sell anything that embodies
- any of the material included herein, in whole or in part,
- provided, however, that you may print one interpreted copy of the
- PostScript(R) version of the OpenGL Specification provided on
- this CD-ROM for your personal reference in connection with your
- use of an OpenGL product.
-
- THE MATERIAL EMBODIED ON THIS CD-ROM IS PROVIDED TO YOU "AS-IS"
- AND WITHOUT WARRANTY OF ANY KIND, EXPRESS, IMPLIED OR OTHERWISE,
- INCLUDING WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY OR
- FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
- GRAPHICS, INC. BE LIABLE TO YOU OR ANYONE ELSE FOR ANY DIRECT,
- SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY
- KIND, OR ANY DAMAGES WHATSOEVER, INCLUDING WITHOUT LIMITATION,
- LOSS OF PROFIT, LOSS OF USE, SAVINGS OR REVENUE, OR THE CLAIMS OF
- THIRD PARTIES, WHETHER OR NOT SILICON GRAPHICS, INC. HAS BEEN
- ADVISED OF THE POSSIBILITY OF SUCH LOSS, HOWEVER CAUSED AND ON
- ANY THEORY OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE
- POSSESSION, USE OR PERFORMANCE OF THIS CD-ROM, OR THE MATERIAL
- CONTAINED ON THIS CD-ROM.
-
- U. S. Government Restricted Rights Legend
-
- Use, duplication, or disclosure by the Government is subject to
- restrictions set forth in FAR 52.227.19(c)(2) or subparagraph
- (c)(1)(ii) of the Rights in Technical Data and Computer Software
- clause at DFARS 252.227-7013 and/or in similar or successor
- clauses in the FAR or the DOD or NASA FAR Supplement.
- Unpublished-- rights reserved under the copyright laws of the
- United States. Contractor/manufacturer is Silicon Graphics,
- Inc., 2011 N. Shoreline Blvd., Mountain View, CA 94039-7311.
-
- OpenGL is a trademark of Silicon Graphics, Inc. PostScript is a
- registered trademark of Adobe Systems Incorporated.
-
-